package com.ruoyi.merchant.mapper;

import com.ruoyi.merchant.domain.MerchantPrinter;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 商家打印机Mapper接口
 */
public interface MerchantPrinterMapper {
    /**
     * 查询打印机
     */
    MerchantPrinter selectPrinterByPrinterId(Long printerId);

    /**
     * 查询打印机列表
     */
    List<MerchantPrinter> selectPrinterList(@Param("merchantId") Long merchantId);

    /**
     * 新增打印机
     */
    int insertPrinter(MerchantPrinter printer);

    /**
     * 修改打印机
     */
    int updatePrinter(MerchantPrinter printer);

    /**
     * 删除打印机
     */
    int deletePrinterByPrinterId(Long printerId);

    /**
     * 查询默认打印机
     */
    MerchantPrinter selectDefaultPrinter(@Param("merchantId") Long merchantId);

    /**
     * 重置默认打印机
     */
    int resetDefaultPrinter(@Param("merchantId") Long merchantId);

    /**
     * 设置默认打印机
     */
    int setDefaultPrinter(@Param("printerId") Long printerId, @Param("merchantId") Long merchantId);

    /**
     * 检查序列号是否已存在
     */
    MerchantPrinter selectByPrinterSn(@Param("printerSn") String printerSn);

    /**
     * 更新打印机在线状态
     */
    int updateOnlineStatus(@Param("printerId") Long printerId, @Param("isOnline") Integer isOnline);
}
